Micron Document
____ _ _ _ _
| _ \ ___ | |_ (_) _ __ ___ __| | (_) __ _
| |_) | / _ \ | __| | | | '_ \ / _ \ / _| | | | / _ |
| _ < | __/ | |_ | | | |_) | | __/ | (_| | | | | (_| |
|_| \_\ \___| \__| |_| | .__/ \___| \__,_| |_| \__,_|
|_|


The NomadNet German Wikipedia | Archives | Info
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b

πŸ” Search

Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―

Stencilbuffer
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
Der Stencilbuffer (engl. stencil – Schablone, buffer – Puffer) ist in der Computergrafik ein zusΓ€tzlich zum Color-Buffer und Z-Buffer vorhandener Teil des Framebuffers. Jedem Pixel ist ein Wert im Stencilbuffer zugeordnet. Die Aufgabe des Stencilbuffers ist es, die Übernahme von Fragmenten in den Framebuffer auf Regionen mit bestimmten Eigenschaften der Stencilwerte einzuschrΓ€nken. Die zu erfΓΌllende Eigenschaft wird durch die Stencilfunction eingestellt. In welcher Art der Stencilwert bei der Verarbeitung eines Fragments modifiziert wird, wird durch die Stenciloperation festgelegt, die abhΓ€ngig vom Ausgang des Stencil- und des Z-Tests unterschiedlich eingestellt werden kann.

Contents

β€’ Anwendungen
β€’ Geschichte
β€’ Weblinks

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Anwendungen

Im einfachsten Fall wird durch den Stencilbuffer das Renderinggebiet begrenzt. Dies kann beispielsweise bei einer Auto- oder Flugsimulation zum Ausmaskieren des Cockpits genutzt werden, um die Teile der Szene, die sich hinter dem Cockpit befinden, nicht zu rendern. Ein anderes solches Einsatzgebiet ist die Vermeidung von Z-Fighting bei der Darstellung komplanarer Ebenen (Dreiecke). Mit Hilfe des Stencilbuffers lassen sich auch Spiegel darstellen, in dem die gespiegelte Szene in der originalen nur innerhalb des Spiegelrahmens gerendert wird.

Die enge Verzahnung des Stencil- und des Z-Buffers in der Grafikpipeline und insbesondere die MΓΆglichkeit, die Inkrementierung oder Dekrementierung als Stenciloperation einstellen zu kΓΆnnen, erlaubt aber auch die Implementierung einer Reihe komplexerer Verfahren. Eines der wichtigsten ist der Schattenvolumen-Algorithmus zur Erzeugung von Schatten von Punktlichtquellen. Verfahren dieser Art erfordern es meist, die Szene oder Teile der Szene mehrfach zu rendern, um Zwischenergebnisse im Stencilbuffer bei der Erzeugung eines Bilds sofort verwenden zu kΓΆnnen. Daher beanspruchen sie die Grafikhardware in der Regel stark.

Geschichte

Den Stencilbuffer in der heutigen Form gibt es etwa seit Anfang der 1990er Jahre mit der EinfΓΌhrung der SGI Indigo von Silicon Graphics. Die erste Programmierschnittstelle, die den Stencilbuffer unterstΓΌtzte, war das herstellereigene IRIS GL, gefolgt von OpenGL 1.0 im Jahre 1992. Direct3D enthΓ€lt ab Version 6.0 Befehle zur Verwendung des Stencilbuffers.

Seit 1998 fand der Stencilbuffer Einzug in für den Spielemarkt konzipierte Grafikhardware, vor allem mit Erscheinen der Riva TNT von Nvidia und der Rage 128 von ATI. In allen neueren derartigen Produkten wird er seitdem ebenfalls unterstützt. Technisch belegen bei diesen Produkten bis heute der Stencil- und Z-Buffer den gleichen Speicherbereich auf der Grafikhardware, mit einer Grâße von 32 Bit pro Pixel. Der Z-Buffer hat dabei eine Tiefe von 24 Bit pro Pixel, für den Stencilbuffer fallen die restlichen 8 Bit pro Pixel ab.

Weblinks

β€’ Stencil-Buffer, tu-chemnitz.de